// SPDX-FileCopyrightText: Copyright 2025-2025 深圳市同心圆网络有限公司
// SPDX-License-Identifier: GPL-3.0-only

package core

import (
	"context"

	"gitcode.com/openseaotter/so_proto_gen_go.git/image_api"
)

type ImageInfoDao interface {
	Insert(ctx context.Context, image *image_api.ImageInfo) error
	Exist(ctx context.Context, groupName, imageName string) (bool, error)
	Get(ctx context.Context, groupName, imageName string) (*image_api.ImageInfo, error)
	Update(ctx context.Context, image *image_api.ImageInfo) error
	Remove(ctx context.Context, groupName, imageName string) error
	Count(ctx context.Context, groupName string) (uint32, error)
	List(ctx context.Context, filterByGroupName bool, groupName string) ([]*image_api.ImageInfo, error)
}
